#pragma once

#include "gameobject.h"
#include "Events\CSGD_EventSystem.h"

class Button : public GameObject
{
private:

	bool defaultActive;
	bool isToggled;
	bool hasHandledCollision;

	int activeImageID;
	int inactiveImageID;

public:
	// Constructor
	Button(void);

	// Destructor
	~Button(void);

	//////////////////////////////////////////////////
	// Mutators:
	void SetActiveImageID(int id);
	void SetInactiveImageID(int id);
	void SetDefaultState(bool active);

	//////////////////////////////////////////////////
	// GameObject Methods:
	void Update(float deltaTime)									override;
	void Render(void) const											override;
	void HandleCollision(GameObject& other, CollisionInfo& info)	override;

private:
	void ToggleOn(void);
	void ToggleOff(void);
};

